/**
 * 过滤器模式
 * 结构型设计模式
 *
 * 过滤器模式和责任链模式：
 *      共同点：
 *          都是通过抽象类实现解耦
 *      不同点：
 *          责任链在执行链条中只有一个符合条件的节点，并且会在节点中调用链条的下一个节点
 *          过滤器模式则是执行链条的每一个节点都会执行，在外部调用下一个节点
 */
package com.fwzhang.second.filter;